package com.ynet.middleground.contract.bean;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import com.ynet.core.common.BaseReqObj;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author liulx
 * @description 计算 pdf 签章 hash 值请求类
 * @date 2020-04-22 22:33
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "计算 pdf 签章 hash 值请求类", description = "计算 pdf 签章 hash 值请求类，使用 cfca 证书")
public class CalculatePdfHashReq extends BaseReqObj {

    private static final long serialVersionUID = -7330998764465080479L;

    @ApiModelProperty(value = "PDF 文件短路径地址(包含 Bucket) \n  如：zhongtai/file.pdf",
        notes = "PDF 文件短路径地址(包含 Bucket) \n  如：zhongtai/file.pdf", dataType = "String", required = true)
    @NotBlank(message = "PDF 文件地址不能为空")
    private String pdfUrl;

    @ApiModelProperty(value = "印章图片 id", notes = "印章图片 id", dataType = "Integer", required = true)
    @NotNull(message = "印章图片 id 不能为空")
    private Integer sealId;

    @ApiModelProperty(value = "签署页码", notes = "签署页码", dataType = "String", required = true)
    @NotBlank(message = "签署页码不能为空")
    private String page;

    @ApiModelProperty(value = "签署位置 X 坐标，默认值 0", notes = "签署位置 X 坐标，默认值 0", dataType = "int")
    private int posX;

    @ApiModelProperty(value = "签署位置 Y 坐标，默认值 0", notes = "签署位置 Y 坐标，默认值 0", dataType = "int")
    private int posY;

}
